The present invention relates generally to a database processing system which references files, and more particularly to a technology which is effectively applied to a database processing system that executes definitions and operations for data of file reference type capable of referencing a file so as to improve the integrity of a database (DB).
A database management system (hereinafter abbreviated as the “DBMS”), particularly a relational DBMS, processes queries which are expressed in a non-procedural language. The SQL (Structured Query Language) has been employed as this database language. At present, the standardization is under progress for next generation SQL (under ISO, ANSI) in the database language SQL. The reference type is one of main functions implemented in the next generation SQL. The reference type stores a pointer in a particular row in a separate table within a DB, rather than storing a value in a column. In this way, information in a referenced row can be provided as shared data.
In recent years, there has been an increasing need for employing a DBMS to manage multimedia data including texts, graphics, pictures, audio, moving image data and so on which may be accessed through WWW (World Wide Web) or the like. However, these data are generally produced and modified by their individual applications dedicated thereto, so that once data is stored within a DBMS, the data must be retrieved from and stored again in the DBMS when a dedicated application has to handle data produced thereby. To eliminate this inconvenience, an external file function has been devised for equally handling data stored in a file placed external to a DBMS, as if the data were stored in the DBMS, by indicating this external file. This external file function is supported as BFILE type in Oracle8 which is an RDBMS available from ORACLE Corporation. Also, IBM has published a similar external file function called “DataLinks” for its DB2 Universal Database (see Search Report, DataLinks: MANAGING EXTERNAL DADA WITH DB2 UNIVERSAL DATABASE, by InfoIT, Inc., pp10-11, August 1997).
As part of core capabilities, conventional DBMS's maintain the integrity, so that rows of a DB are established together with the existence of all columns, and only values in a certain column will never be missing. When a column, for which an index is defined, is updated, the index must be modified to have the most recent information. Thus, if a. conventional DBMS is simply provided with the ability of handling external files, operations such as update, delete and so on will be performed to such external files out of the management of the DBMS. Since the external files are not managed by the DBMS, the operations performed thereon will arise a problem in that the DBMS suffers from difficulties in maintaining the integrity such as that normally maintained within columns of the DBMS.
While a method of indicating an external tile 10 out of the management of a DBMS has been contemplated in the aforementioned background art techniques, the BFILE type is dedicated to reading, so that it is not recovered when a fault occurs. Moreover, the BFILE type is not a function created in consideration of an update performed outside a DBMS. DataLinks, in turn, employs a method of controlling external files such that they are not rewritten by external applications or the like which do not have an access right to a DB from which the external files may be accessed, in order to restrict accesses to external files. DataLinks, however, does not consider actions to take in the DBMS itself when an associated external file is updated.